let psshs = chrome.extension.getBackgroundPage().psshs;
let requests = chrome.extension.getBackgroundPage().requests;
var userInputs = {};

// Événements pour les boutons
document.getElementById('psshButton').addEventListener("click", (event) => {
    event.preventDefault();
    drawList(psshs, 'pssh');
});

document.getElementById('licenseButton').addEventListener("click", (event) => {
    event.preventDefault();
    drawList(requests.map(r => r['url']), 'license');
});

// Fonction pour écrire les éléments de la liste
function writeListElement(items, outputVar, searchStr) {
    console.log('Items:', items);
    console.log('Output Var:', outputVar);
    console.log('Search String:', searchStr);

    document.getElementById("items").innerHTML = '';

    items.forEach((item, index) => {
        if (!searchStr || item.toLowerCase().includes(searchStr)) {
            const li = document.createElement('li');
            li.textContent = item;
            li.addEventListener('click', () => itemSelected(index, item, outputVar));
            document.getElementById("items").appendChild(li);
        }
    });
}

// Fonction pour dessiner la liste
function drawList(items, outputVar) {
    document.getElementById('home').style.display = 'none';
    document.getElementById('chooserContainer').style.display = 'grid';
    writeListElement(items, outputVar, null);
    document.getElementById("chooserSearch").addEventListener('input', event => {
        const searchStr = event.target.value.toLowerCase();
        writeListElement(items, outputVar, searchStr);
    });

    if (outputVar === 'pssh') {
        console.log("Liste PSSH affichée");
    }
}

// Fonction pour gérer la sélection d'un élément
function itemSelected(index, item, outputVar) {
    userInputs[outputVar] = index;
    document.getElementById(outputVar).value = item;
    document.getElementById('chooserContainer').style.display = 'none';
    document.getElementById('home').style.display = 'grid';
    document.getElementById("chooserSearch").value = ""; // Réinitialiser le champ de recherche
}
